Work Request Manager API
About the WRM API
Overview
The Work Request Manager (WRM) API enables Chorus (the Work Requestor) and Services Companies (Work Suppliers) to have consistent, comprehensive, and structured communications when dealing with work requests, over the one channel, and across all work types.
Work requests include detailed information about the site, contacts, assets, and inventory. The API can be used to provide or receive additional information relevant to the work being performed. See API Resources > Event notifications and Receiving notifications.
Work Request Structure
A work request is consists of a single parent task and one or more child activities. A task is only ever allocated to one Work Supplier.
The Work Requestor (Chorus) is responsible for managing the task and the Work Supplier manages the activity(s). The task lifecycle is related to, but independent of the activity lifecycle.
Data Model
The data model holds all the structured data that comprise a work request. The diagram below describes the WRM data model and shows the relationships between the different entities.
Data Model Objects
This table describes the main objects in the WRM data model.
Object | Description |
---|---|
Task | A Task:
|
Activities | An Activity:
|
Source | The Source:
|
Schedule | The Schedule:
|
Site | The Site:
|
Contact | Contacts:
|
Data Types
This table describes the different data types used in the WRM API.
Data Type | Detail |
---|---|
Date / Time (datetime) | All Chorus APIs use UTC time in ISO 8601 format, with or without decimal fraction seconds, i.e.:
Where:
|
Boolean | For each Boolean attribute Chorus has set the default value that can be overwritten. |
Strings | Most of our strings have no character limit except for some of our notes and additional information fields that have a 5000 character limit. |
Arrays | Where an object is configured as an array of name / value pairs the content isn't validated in the WRM. This means you may receive a 200-success notification from the WRM even if the content is invalid. Examples of arrays are the outcomes array (as part of the UpdateTaskActivityOutcomesEvent event notifiation) and the additionalInfoDetail array (as part of the UpdateTaskAdditionalInfosEvent event notification) sent by the Work Supplier, and the assets array (as part of the UpdateTaskAssetsEvent event notification) sent by the Work Requestor. |
Enumerations (enums) | The WRM contains many enumerated lists, some that are validated. |
Events and Notifications
The Work Request Manager includes a suite of events and notifications to provide communication and status updates between the Work Requestor and Work Supplier. Events and notifications are how a work request moves through the end-to-end process. See How to use the WRM API.
A Work Requestor or Work Supplier sends an event to the WRM and the WRM routes the information as a notification to the required recipients. For each event there is a corresponding notification.
The diagram below shows how the WRM receives events and sends notifications.